package P071_UseSubListHandleLocalList;

import org.junit.Test;

import java.util.*;

/**
 * @ClassName : UseSubListHandleLocalList
 * @Description : 推荐使用subList处理局部列表
 * @Author : wukj1
 * @Date: 2022/3/30
 **/
public class UseSubListHandleLocalList {

    @Test
    public void test(){
        //初始化一个长度为100的不可变列表
        List<Integer> initData = Collections.nCopies(100, 0);
        //转换为可变列表
        List<Integer> list = new ArrayList<>(initData);

        //遍历删除索引位置为20~30的元素
        for (int i = 20; i < 30; i++){
            if(i < list.size()){
                list.remove(i);
            }
        }
        System.out.println(list.size());
    }

    @Test
    public void test1(){
        //初始化一个长度为100的不可变列表
        List<Integer> initData = Collections.nCopies(100, 0);
        //转换为可变列表
        AbstractList<Integer> list = new ArrayList<>(initData);

        //使用subList截取元素
        list.subList(20,30).clear();
        System.out.println(list.size());
    }

}

